<?php

require_once 'header.php';
require_once 'libs/telnet_lib.php';
valid_login($action_permission['insert']);

function main()
{
global $output, $lang_global, $lang_message;

$output .= '
<div class="top"><h1>'.$lang_message['main'].'</h1></div>
<center>
	<form action="message.php?action=send" method="post" name="form">
		<table class="top_hidden">
			<tr>
				<td align="center">
					Send :
					<select name="type">
						<option value="1" selected="selected">'.$lang_message['announcement'].'</option>
						<option value="2">'.$lang_message['notification'].'</option>
						<option value="3">'.$lang_message['both'].'</option>
					</select>
				</td>
			</tr>
			<tr>
				<td colspan="2" align="center">
					<textarea id="msg" name="msg" rows="26" cols="80"></textarea>
				</td>
			</tr>
			<tr>
				<td align="center">
					<table align="center" class="hidden">
						<tr>
							<td>';
								makebutton($lang_message['send'], 'javascript:do_submit()" type="wrn', 130);
								$output .= '
							</td>
							<td>';
								makebutton($lang_global['back'], 'javascript:window.history.back()" type="def', 130);
								$output .= '
							</td>
						</tr>
					</table>
				</td>
			</tr>
		</table>
	</form>
</center>';
}
function check()
{
global $output, $lang_telnet, $realm_id, $server;

$telnet = new telnet_lib();
$result = $telnet->Connect($server[$realm_id]['addr'], $server[$realm_id]['telnet_port'], $server[$realm_id]['telnet_user'], $server[$realm_id]['telnet_pass']);
if (0 == $result)
{
	$telnet->Disconnect();
	redirect('message.php?action=main');
}
elseif (1 == $result)
$mess_str = $lang_telnet['unable'];
elseif (2 == $result)
$mess_str = $lang_telnet['unknown_host'];
elseif (3 == $result)
$mess_str = $lang_telnet['login_failed'];
elseif (4 == $result)
$mess_str = $lang_telnet['not_supported'];

unset($result);
unset($telnet);

redirect('message.php?action=result&mess='.$mess_str.'');
}

function send(&$sqlc)
{
global $lang_telnet, $lang_message, $realm_id, $server;

if (empty($_POST['msg'])) redirect('message.php?action=result&mess='.$lang_message['empty_fields'].'');

$type = (isset($_POST['type'])) ? $sqlc->quote_smart($_POST['type']) : 3;
if (is_numeric($type)); else $type = 3;

$msg = $sqlc->quote_smart($_POST['msg']);
if (4096 < strlen($msg))
redirect('message.php?action=result&mess='.$lang_message['message_too_long'].'');

$telnet = new telnet_lib();
$result = $telnet->Connect($server[$realm_id]['addr'], $server[$realm_id]['telnet_port'], $server[$realm_id]['telnet_user'], $server[$realm_id]['telnet_pass']);
if (0 == $result)
{
	$mess_str = '';
	if ( 2 == $type);
	else
	{
		$telnet->DoCommand('announce '.$msg, $result);
		$mess_str .= ''.$lang_message['system_message'].': "'.$msg.'" '.$lang_message['sent'].'.';
	}
	if ( 3 == $type)
	$mess_str .= '<br /><br />';
	if ( 1 == $type);
	else
	{
		$telnet->DoCommand('notify '.$msg, $result);
		$mess_str .= ''.$lang_message['global_notify'].': "'.$msg.'" '.$lang_message['sent'].'.';
	}
	$telnet->Disconnect();
}
elseif (1 == $result)
$mess_str = $lang_telnet['unable'];
elseif (2 == $result)
$mess_str = $lang_telnet['unknown_host'];
elseif (3 == $result)
$mess_str = $lang_telnet['login_failed'];
elseif (4 == $result)
$mess_str = $lang_telnet['not_supported'];

unset($result);
unset($telnet);
unset($type);
unset($msg);

redirect('message.php?action=result&mess='.$mess_str.'');
}

function result()
{
global $output, $lang_global, $lang_message;

$mess = (isset($_GET['mess'])) ? $_GET['mess'] : NULL;

$output .= '
<div class="top"><h1>'.$lang_message['message_result'].'</h1></div>
<center>
	<table class="top_hidden" width="400">
		<tr>
			<td align="center">
				<br />'.$mess.'<br /><br />';
				unset($mess);
				$output .= '
			</td>
		</tr>
		<tr>
			<td align="center">
				<table align="center" class="hidden">
					<tr>
						<td>';
							makebutton($lang_global['back'], 'javascript:window.history.back()', 130);
							$output .= '
						</td>
					</tr>
				</table>
			</td>
		</tr>
	</table>
</center>';
}

$action = (isset($_GET['action'])) ? $_GET['action'] : NULL;

$lang_message = lang_message();
$lang_telnet = lang_telnet();

if ('send' === $action)
send($sqlc);
elseif ('result' === $action)
result();
elseif ('main' === $action)
main();
else
check();

unset($action);
unset($action_permission);
unset($lang_telnet);
unset($lang_message);

require_once 'footer.php';

?>
